<!DOCTYPE html>
<html lang="zh-CN">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=1.0, user-scalable=no">
    <title>每周广播电视报</title>
    <style>
        * {
            margin: 0;
            padding: 0;
            box-sizing: border-box;
        }

        body {
            font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei", sans-serif;
            background: linear-gradient(135deg, #667eea 0%, #764ba2 100%);
            min-height: 100vh;
            padding-bottom: 20px;
        }

        /* 顶部固定导航栏 - 日期切换 */
        .nav-container {
            position: sticky;
            top: 0;
            z-index: 1000;
            background: rgba(255, 255, 255, 0.98);
            backdrop-filter: blur(10px);
            box-shadow: 0 4px 20px rgba(0, 0, 0, 0.1);
            padding: 12px 0;
        }

        .nav-tabs {
            display: flex;
            justify-content: space-around;
            max-width: 100%;
            padding: 0 10px;
            overflow-x: auto;
            -webkit-overflow-scrolling: touch;
        }

        .nav-tabs::-webkit-scrollbar {
            display: none;
        }

        .nav-tab {
            flex: 1;
            min-width: 50px;
            padding: 10px 8px;
            background: transparent;
            border: none;
            border-bottom: 3px solid transparent;
            font-size: 15px;
            font-weight: 500;
            color: #666;
            cursor: pointer;
            transition: all 0.3s ease;
            white-space: nowrap;
        }

        .nav-tab.active {
            color: #667eea;
            border-bottom-color: #667eea;
            font-weight: 600;
        }

        .nav-tab:hover {
            color: #667eea;
        }

        /* 内容区域 */
        .content-area {
            max-width: 750px;
            margin: 0 auto;
            padding: 20px 15px;
        }

        .day-content {
            display: none;
        }

        .day-content.active {
            display: block;
            animation: fadeIn 0.4s ease;
        }

        @keyframes fadeIn {
            from {
                opacity: 0;
                transform: translateY(10px);
            }
            to {
                opacity: 1;
                transform: translateY(0);
            }
        }

        /* 频道快捷导航 */
        .channel-nav {
            background: white;
            border-radius: 16px;
            padding: 20px;
            margin-bottom: 20px;
            box-shadow: 0 8px 30px rgba(0, 0, 0, 0.12);
        }

        .channel-nav-title {
            font-size: 16px;
            font-weight: 600;
            color: #1a1a1a;
            margin-bottom: 15px;
            display: flex;
            align-items: center;
            gap: 8px;
        }

        .channel-nav-title::before {
            content: "📺";
            font-size: 18px;
        }

        .channel-grid {
            display: grid;
            grid-template-columns: repeat(2, 1fr);
            gap: 10px;
        }

        .channel-link {
            padding: 12px 16px;
            background: linear-gradient(135deg, #f5f7fa 0%, #c3cfe2 100%);
            border-radius: 10px;
            border: none;
            color: #333;
            font-size: 14px;
            font-weight: 500;
            cursor: pointer;
            transition: all 0.3s ease;
            text-align: left;
            box-shadow: 0 2px 8px rgba(0, 0, 0, 0.08);
        }

        .channel-link:hover {
            transform: translateY(-2px);
            box-shadow: 0 4px 12px rgba(0, 0, 0, 0.15);
            background: linear-gradient(135deg, #667eea 0%, #764ba2 100%);
            color: white;
        }

        .channel-link:active {
            transform: translateY(0);
        }

        /* 电视台板块 */
        .tv-station {
            background: white;
            border-radius: 16px;
            padding: 20px;
            margin-bottom: 20px;
            box-shadow: 0 8px 30px rgba(0, 0, 0, 0.12);
            scroll-margin-top: 80px; /* 为固定导航栏留出空间 */
        }

        .station-header {
            border-bottom: 2px solid #f0f0f0;
            padding-bottom: 12px;
            margin-bottom: 16px;
        }

        .station-title {
            font-size: 20px;
            font-weight: 700;
            color: #1a1a1a;
            margin-bottom: 6px;
            display: flex;
            align-items: center;
            gap: 8px;
        }

        .station-subtitle {
            font-size: 13px;
            color: #999;
            font-weight: 400;
        }

        /* 节目列表 */
        .program-list {
            display: flex;
            flex-direction: column;
            gap: 10px;
        }

        .program-item {
            display: grid;
            grid-template-columns: 60px 1fr;
            gap: 12px;
            padding: 8px 0;
            border-bottom: 1px solid #f5f5f5;
            transition: background 0.2s ease;
        }

        .program-item:last-child {
            border-bottom: none;
        }

        .program-item:hover {
            background: #f8f9ff;
            border-radius: 8px;
            padding-left: 8px;
            padding-right: 8px;
        }

        .program-time {
            font-family: 'Courier New', monospace;
            font-size: 14px;
            color: #667eea;
            font-weight: 600;
            text-align: left;
            line-height: 1.6;
        }

        .program-name {
            font-size: 14px;
            color: #333;
            line-height: 1.6;
            word-wrap: break-word;
            text-align: left;
        }

        .program-name.highlight {
            font-weight: 600;
            color: #1a1a1a;
        }

        /* 返回顶部按钮 */
        .back-to-top {
            position: fixed;
            bottom: 30px;
            right: 20px;
            width: 50px;
            height: 50px;
            background: linear-gradient(135deg, #667eea 0%, #764ba2 100%);
            border: none;
            border-radius: 50%;
            color: white;
            font-size: 24px;
            cursor: pointer;
            box-shadow: 0 4px 20px rgba(102, 126, 234, 0.4);
            opacity: 0;
            visibility: hidden;
            transition: all 0.3s ease;
            z-index: 999;
            display: flex;
            align-items: center;
            justify-content: center;
        }

        .back-to-top.show {
            opacity: 1;
            visibility: visible;
        }

        .back-to-top:hover {
            transform: translateY(-5px);
            box-shadow: 0 6px 25px rgba(102, 126, 234, 0.6);
        }

        .back-to-top:active {
            transform: translateY(-2px);
        }

        /* 空状态 */
        .empty-state {
            text-align: center;
            padding: 60px 20px;
            color: white;
        }

        .empty-state h3 {
            font-size: 18px;
            margin-bottom: 10px;
        }

        .empty-state p {
            font-size: 14px;
            opacity: 0.8;
        }
    </style>
</head>
<body>
    <!-- 顶部导航栏 -->
    <div class="nav-container">
        <div class="nav-tabs">
            <button class="nav-tab active" data-day="monday">周一</button>
            <button class="nav-tab" data-day="tuesday">周二</button>
            <button class="nav-tab" data-day="wednesday">周三</button>
            <button class="nav-tab" data-day="thursday">周四</button>
            <button class="nav-tab" data-day="friday">周五</button>
            <button class="nav-tab" data-day="saturday">周六</button>
            <button class="nav-tab" data-day="sunday">周日</button>
        </div>
    </div>

    <!-- 内容展示区 -->
    <div class="content-area">
        <div id="monday" class="day-content active"></div>
        <div id="tuesday" class="day-content"></div>
        <div id="wednesday" class="day-content"></div>
        <div id="thursday" class="day-content"></div>
        <div id="friday" class="day-content"></div>
        <div id="saturday" class="day-content"></div>
        <div id="sunday" class="day-content"></div>
    </div>

    <!-- 返回顶部按钮 -->
    <button class="back-to-top" id="backToTop">↑</button>

    <script>
        // 示例数据结构（简化版）
        const mondayData = [
            {
                name: "东方卫视",
                subtitle: "数字电视1 IPTV 2",
                programs: [
                    { time: "07:00", name: "看东方" },
                    { time: "09:33", name: "连续剧：梅花红桃(29~32)" },
                    { time: "12:00", name: "新时代 共享未来：第八届中国国际进口博览会融媒体直播特别报道", highlight: true },
                    { time: "12:30", name: "ShanghaiEye" },
                    { time: "12:42", name: "连续剧：繁华似锦(10~15)" },
                    { time: "17:00", name: "东方新娱乐" },
                    { time: "17:27", name: "名医话养生" },
                    { time: "18:00", name: "东方新闻" },
                    { time: "19:00", name: "新闻联播" },
                    { time: "19:31", name: "连续剧：生万物(23、24)", highlight: true },
                    { time: "21:08", name: "品质东方微剧场" },
                    { time: "21:20", name: "今晚" },
                    { time: "22:01", name: "这就是中国" },
                    { time: "22:42", name: "下一站" },
                    { time: "23:07", name: "纪录片：王国 第二季(1)" },
                    { time: "23:53", name: "4K超高清精品剧场：贞观盛事（下）" },
                    { time: "00:35", name: "连续剧：破晓东方(20~28)" }
                ]
            },
            {
                name: "新闻综合频道",
                subtitle: "数字电视2 IPTV 1",
                programs: [
                    { time: "07:00", name: "上海早晨" },
                    { time: "09:05", name: "连续剧：我的后半生(28)" },
                    { time: "09:50", name: "2025《执牛耳者》(23)" },
                    { time: "10:38", name: "爱上海" },
                    { time: "11:05", name: "民生一网通" },
                    { time: "12:00", name: "新时代 共享未来：第八届中国国际进口博览会融媒体直播特别报道", highlight: true },
                    { time: "12:32", name: "下一站" },
                    { time: "13:00", name: "连续剧：远方的山楂树(40~43)" },
                    { time: "16:00", name: "时代达人秀(3)" },
                    { time: "17:00", name: "寻味" },
                    { time: "17:29", name: "新闻坊" },
                    { time: "18:30", name: "新闻报道 新闻透视观众中来 天气预报" },
                    { time: "19:15", name: "案件聚焦" },
                    { time: "19:48", name: "连续剧：一路向前(13、14)" },
                    { time: "21:30", name: "新闻夜线" },
                    { time: "22:30", name: "中国考古报道" },
                    { time: "23:00", name: "案件聚焦" },
                    { time: "23:25", name: "连续剧：远方的山楂树(40~43)" }
                ]
            },
            {
                name: "都市频道",
                subtitle: "数字电视3 IPTV 3",
                programs: [
                    { time: "07:33", name: "X诊所" },
                    { time: "08:17", name: "乐活上海" },
                    { time: "08:44", name: "人气美食" },
                    { time: "09:10", name: "开心全接触" },
                    { time: "10:03", name: "好吃记得夸我" },
                    { time: "11:00", name: "都市焕新家" },
                    { time: "11:16", name: "36.7℃·妙手仁心" },
                    { time: "11:36", name: "纪录片真实影院" },
                    { time: "12:20", name: "X诊所" },
                    { time: "13:10", name: "人气美食" },
                    { time: "13:35", name: "乐活上海" },
                    { time: "14:03", name: "连续剧：一路朝阳(23、24)" },
                    { time: "15:28", name: "新老娘舅" },
                    { time: "16:24", name: "开心全接触" },
                    { time: "16:45", name: "人气美食" },
                    { time: "17:03", name: "乐活上海" },
                    { time: "17:33", name: "开心全接触" },
                    { time: "18:00", name: "新老娘舅" },
                    { time: "19:00", name: "乐活上海" },
                    { time: "19:32", name: "人气美食" },
                    { time: "19:59", name: "都市圈" },
                    { time: "20:09", name: "乐活上海" },
                    { time: "20:35", name: "人气美食" },
                    { time: "21:03", name: "X诊所" },
                    { time: "21:49", name: "纪录片真实影院" },
                    { time: "22:32", name: "开心全接触" },
                    { time: "22:52", name: "星旅途" },
                    { time: "23:08", name: "乐活上海" }
                ]
            },
            {
                name: "东方影视频道",
                subtitle: "数字电视4 IPTV 5",
                programs: [
                    { time: "06:01", name: "连续剧：烈火战马(34、35)" },
                    { time: "07:54", name: "连续剧：战地枪王(14~18)" },
                    { time: "12:35", name: "连续剧：谷鼓齐鸣(16~18)" },
                    { time: "15:25", name: "连续剧：决胜(37~40)" },
                    { time: "18:50", name: "连续剧：战地枪王(19~23)" },
                    { time: "23:00", name: "连续剧：虎胆巍城(33~35)" }
                ]
            },
            {
                name: "五星体育",
                subtitle: "数字电视5 IPTV 8",
                programs: [
                    { time: "06:30", name: "2025世界一级方程式锦标赛摩纳哥站大奖赛" },
                    { time: "07:10", name: "2025澳网亚太区外卡赛女单决赛（张帅一郭涵煜）" },
                    { time: "08:05", name: "2025环崇明岛女子公路自行车世界巡回赛第一天" },
                    { time: "09:24", name: "健身时代精选" },
                    { time: "10:00", name: "弈棋耍大牌一上海三打一" },
                    { time: "12:00", name: "健身时代精选" },
                    { time: "12:36", name: "五星精彩" },
                    { time: "12:40", name: "运动不倒问" },
                    { time: "13:00", name: "弈棋耍大牌" },
                    { time: "14:00", name: "健身时代精选" },
                    { time: "14:05", name: "2025国际马联国家联赛鹿特丹站" },
                    { time: "15:14", name: "2025MXGP国际摩托车越野锦标赛中国上海站上午场" },
                    { time: "15:44", name: "2025世界一级方程式锦标赛巴西站大奖赛" },
                    { time: "16:24", name: "健身时代精选" },
                    { time: "17:00", name: "五星精彩弈棋耍大牌精彩牌局赏析" },
                    { time: "19:30", name: "直播：第十五届全国运动会游泳决赛女子10米跳台决赛", highlight: true },
                    { time: "21:00", name: "五星足球" },
                    { time: "21:55", name: "健身时代精选" },
                    { time: "22:00", name: "弈棋耍大牌一上海三打一" },
                    { time: "23:45", name: "2025英雄联盟全球总决赛决赛" }
                ]
            },
            {
                name: "财经频道",
                subtitle: "数字电视6 IPTV 7",
                programs: [
                    { time: "07:03", name: "公司与行业" },
                    { time: "08:00", name: "今日股市" },
                    { time: "09:00", name: "市场零距离" },
                    { time: "12:00", name: "创时代一张江2" },
                    { time: "12:30", name: "中国经营者" },
                    { time: "13:00", name: "市场零距离" },
                    { time: "16:05", name: "投资有看头" },
                    { time: "16:35", name: "陆家嘴金融沙龙" },
                    { time: "17:16", name: "财经视频集萃" },
                    { time: "17:30", name: "中国经营者" },
                    { time: "18:00", name: "今日股市" },
                    { time: "19:00", name: "公司与行业" },
                    { time: "20:00", name: "谈股论金" },
                    { time: "21:00", name: "财经夜行线" },
                    { time: "21:41", name: "首席评论" },
                    { time: "22:04", name: "创时代一张江2" },
                    { time: "22:30", name: "今日股市" },
                    { time: "23:30", name: "财经视频集萃一投资有看头" }
                ]
            },
            {
                name: "哈哈炫动卫视",
                subtitle: "数字电视7 IPTV 10",
                programs: [
                    { time: "08:00", name: "新大头儿子和小头爸爸1(15~26)" },
                    { time: "11:00", name: "海底小纵队中国之旅2(18、19)" },
                    { time: "12:00", name: "犟驴小红军(3、4)" },
                    { time: "12:30", name: "聪明的顺溜2(23~32)" },
                    { time: "15:00", name: "甜心格格5(25、26)" },
                    { time: "16:00", name: "开心超人联盟之平行时空大冒险(1~4)" },
                    { time: "17:00", name: "海底小纵队10(23~25)" },
                    { time: "17:45", name: "我的同学是美人鱼(22)" },
                    { time: "18:00", name: "愚公移山(1、2)" },
                    { time: "18:30", name: "星星班长(5~9)" },
                    { time: "19:00", name: "荧星梦工厂(475、476)" },
                    { time: "19:30", name: "超级飞侠18(7~10)" },
                    { time: "20:30", name: "喜羊羊与灰太狼之羊村守护者(41~45)" },
                    { time: "22:00", name: "哈哈地球人4(5~12)" }
                ]
            },
            {
                name: "东方购物",
                subtitle: "数字电视11 IPTV 12",
                programs: [
                    { time: "07:20", name: "营优衡胶原蛋白压片糖" },
                    { time: "08:05", name: "JANCYBONY男士/女士轻盈暖途羽绒鞋" },
                    { time: "08:45", name: "BIOH蜂蜜含片" },
                    { time: "09:35", name: "三阳盛 生腌红膏蟹糊" },
                    { time: "10:15", name: "神象 西洋参" },
                    { time: "11:05", name: "RoseMaryellen 女士千鸟格翻领拼接加绒外套/男士外套" },
                    { time: "11:45", name: "金加瀛 手工桑蚕长丝贡被" },
                    { time: "12:35", name: "美厨娘筋头巴脑" },
                    { time: "13:15", name: "张奶奶海参" },
                    { time: "14:05", name: "蛋鲜森无抗黄油老母鸡" },
                    { time: "14:55", name: "VIK863南极磷虾油" },
                    { time: "15:45", name: "中粮 孔乙己三年陈黄酒" },
                    { time: "16:25", name: "民光国民印花加厚磨毛床单" },
                    { time: "17:05", name: "稻道丰黑金松露亚麻籽仁饼" },
                    { time: "17:45", name: "基维氏蜂蜜" },
                    { time: "18:35", name: "英伦双城记·伦敦的古典与爱丁堡的浪漫10日游" },
                    { time: "19:25", name: "营优衡BB-12益生菌" },
                    { time: "20:15", name: "祺玉良源翠色盎然和田玉手镯" },
                    { time: "21:05", name: "神象 西洋参" },
                    { time: "21:55", name: "三头鹰不粘锅" },
                    { time: "22:45", name: "金赐力沙棘原浆" },
                    { time: "23:25", name: "能率燃气热水器" }
                ]
            },
            {
                name: "上海教视",
                subtitle: "数字电视13 IPTV 16",
                programs: [
                    { time: "08:30", name: "健康大不同" },
                    { time: "09:10", name: "银龄宝典" },
                    { time: "09:30", name: "银龄课堂" },
                    { time: "10:10", name: "银龄宝典" },
                    { time: "10:20", name: "健康大不同" },
                    { time: "11:10", name: "谢谢你来了" },
                    { time: "13:15", name: "银龄宝典" },
                    { time: "13:30", name: "连续剧：刀尖(29、30)" },
                    { time: "15:30", name: "谢谢你来了" },
                    { time: "17:50", name: "银龄宝典" },
                    { time: "18:00", name: "教视新闻" },
                    { time: "19:00", name: "新闻联播" },
                    { time: "19:30", name: "绿叶纪实" },
                    { time: "20:40", name: "教视新闻" },
                    { time: "21:00", name: "连续剧：红岩下的追捕(30、31)" }
                ]
            }
        ];

        // 其他天的数据（示例）
        const weekData = {
            monday: mondayData,
            tuesday: [
                {
                    name: "东方卫视",
                    subtitle: "数字电视1 IPTV 2",
                    programs: [
                        { time: "07:00", name: "周二节目待更新" }
                    ]
                }
            ],
            wednesday: [
                {
                    name: "东方卫视",
                    subtitle: "数字电视1 IPTV 2",
                    programs: [
                        { time: "07:00", name: "周三节目待更新" }
                    ]
                }
            ],
            thursday: [
                {
                    name: "东方卫视",
                    subtitle: "数字电视1 IPTV 2",
                    programs: [
                        { time: "07:00", name: "周四节目待更新" }
                    ]
                }
            ],
            friday: [
                {
                    name: "东方卫视",
                    subtitle: "数字电视1 IPTV 2",
                    programs: [
                        { time: "07:00", name: "周五节目待更新" }
                    ]
                }
            ],
            saturday: [
                {
                    name: "东方卫视",
                    subtitle: "数字电视1 IPTV 2",
                    programs: [
                        { time: "07:00", name: "周六节目待更新" }
                    ]
                }
            ],
            sunday: [
                {
                    name: "东方卫视",
                    subtitle: "数字电视1 IPTV 2",
                    programs: [
                        { time: "07:00", name: "周日节目待更新" }
                    ]
                }
            ]
        };

        // 渲染节目列表（含频道快捷导航）
        function renderPrograms(stations, containerId) {
            const container = document.getElementById(containerId);
            container.innerHTML = '';

            // 创建频道快捷导航
            const channelNav = document.createElement('div');
            channelNav.className = 'channel-nav';
            
            const navTitle = document.createElement('div');
            navTitle.className = 'channel-nav-title';
            navTitle.textContent = '快速导航';
            channelNav.appendChild(navTitle);

            const channelGrid = document.createElement('div');
            channelGrid.className = 'channel-grid';

            // 生成频道快捷链接
            stations.forEach((station, index) => {
                const channelLink = document.createElement('button');
                channelLink.className = 'channel-link';
                channelLink.textContent = station.name;
                channelLink.onclick = () => {
                    const targetStation = document.getElementById(`${containerId}-station-${index}`);
                    if (targetStation) {
                        targetStation.scrollIntoView({ behavior: 'smooth', block: 'start' });
                    }
                };
                channelGrid.appendChild(channelLink);
            });

            channelNav.appendChild(channelGrid);
            container.appendChild(channelNav);

            // 渲染各频道详细信息
            stations.forEach((station, index) => {
                const stationDiv = document.createElement('div');
                stationDiv.className = 'tv-station';
                stationDiv.id = `${containerId}-station-${index}`;

                const header = `
                    <div class="station-header">
                        <div class="station-title">${station.name}</div>
                        <div class="station-subtitle">${station.subtitle}</div>
                    </div>
                `;

                const programList = station.programs.map(program => `
                    <div class="program-item">
                        <div class="program-time">${program.time}</div>
                        <div class="program-name ${program.highlight ? 'highlight' : ''}">${program.name}</div>
                    </div>
                `).join('');

                stationDiv.innerHTML = header + '<div class="program-list">' + programList + '</div>';
                container.appendChild(stationDiv);
            });
        }

        // 初始化渲染周一数据
        renderPrograms(weekData.monday, 'monday');

        // 导航切换功能
        const tabs = document.querySelectorAll('.nav-tab');
        const contents = document.querySelectorAll('.day-content');

        tabs.forEach(tab => {
            tab.addEventListener('click', function() {
                const day = this.getAttribute('data-day');

                // 更新激活状态
                tabs.forEach(t => t.classList.remove('active'));
                this.classList.add('active');

                // 切换内容
                contents.forEach(c => c.classList.remove('active'));
                const targetContent = document.getElementById(day);
                targetContent.classList.add('active');

                // 如果该天内容为空，则渲染
                if (targetContent.innerHTML === '') {
                    renderPrograms(weekData[day], day);
                }

                // 平滑滚动到顶部
                window.scrollTo({ top: 0, behavior: 'smooth' });
            });
        });

        // 返回顶部功能
        const backToTopBtn = document.getElementById('backToTop');

        // 监听滚动事件
        window.addEventListener('scroll', () => {
            if (window.pageYOffset > 300) {
                backToTopBtn.classList.add('show');
            } else {
                backToTopBtn.classList.remove('show');
            }
        });

        // 点击返回顶部
        backToTopBtn.addEventListener('click', () => {
            window.scrollTo({ top: 0, behavior: 'smooth' });
        });
    </script>
</body>
</html>